<?php

abstract class AbstractClass {
    abstract protected function getValue(int $id): int;


    // 默认实现
    public function getKey() {
        return 1;
    }
}


class Alass extends AbstractClass {

    public function getValue(int $id): int {
        return  $id;
    }
    // 覆盖默认实现
    // public function getKey(){
    //     return 3;
    // }
}


$obj = new Alass();

echo $obj->getValue(2);

echo $obj->getKey();